package com.mhkjup.artcircle.service.impl;

import javax.annotation.Resource;
import javax.servlet.http.HttpServlet;

import net.sf.ehcache.Cache;
import net.sf.ehcache.Element;

import org.springframework.stereotype.Service;




@Service
public class EhCacheService extends HttpServlet{ 
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@Resource(name="ehCache")
    private Cache ehCache;
	
	
	

	
	/* 
     * 通过名称从缓存中获取数据
     */  
    public Object getCacheElement(String cacheKey){  
        Element e = ehCache.get(cacheKey);  
        if (e == null) {  
            return null;  
        }  
        return e.getObjectValue();  
    }
    
    /* 
     * 将对象添加到缓存中 
     */  
    public void addToCache(String cacheKey, Object result){  
        Element element = new Element(cacheKey, result);  
        ehCache.put(element);  
    } 
    
    /*
     * 根据key删除对象
     */
    public void delElementByKey(String cacheKey){
    	 ehCache.remove(cacheKey);
    }
    
    
    

 
//   用户根据token获取信息    
//    public UserDB getUser(String token){
//    	UserDB user=(UserDB)getCacheElement(token);
//    	if(user==null){//如果缓存里面没有用户信息
//    		user=userDao.getUserByToken(token);//查询出用户信息
//    		if(user!=null){//如果查询出了用户信息
//    			addToCache(token, user);//放入缓存里面
//    		}
//    	}
//    	return user;
//    }
//    
//    public AdminDB getAdmin(String token){
//    	AdminDB admin=(AdminDB)getCacheElement(token);
//    	if(admin==null){//如果缓存里面没有用户信息
//    		admin=adminDao.getAdminByToKen(token);//查询出用户信息
//    		if(admin!=null){//如果查询出了用户信息
//    			addToCache(token, admin);//放入缓存里面
//    		}
//    	}
//    	return admin;
//    }
//    /**
//     * 根据微信唯一ID  获取用户信息
//     * @param weixinId
//     * @return
//     */
//    
//    public UserDB getUserByOpenId(String weixinId){
//    	UserDB userDB=(UserDB)getCacheElement(weixinId);
//    	if(userDB==null){//如果缓存里面没有用户信息
//    		userDB=adminDao.getUserByWXId(weixinId);//查询出用户信息
//    		if(userDB!=null){//如果查询出了用户信息
//    			addToCache(weixinId, userDB);//放入缓存里面
//    		}
//    	}
//		return userDB;
//    	
//    	
//    }
//    
//    
    
  
}  